package org.osiris.persistence.controllers;

import java.util.List;

import javax.persistence.EntityManager;

import org.osiris.persistence.Requisitosdeproyecto;
import org.osiris.persistence.RequisitosdeproyectoPK;
import org.osiris.persistence.controllers.exceptions.NonexistentEntityException;
import org.osiris.persistence.controllers.exceptions.PreexistingEntityException;

public interface RequisitoDeProyectoInterface {

	public abstract EntityManager getEntityManager();

	public abstract void create(Requisitosdeproyecto requisitosdeproyecto)
			throws PreexistingEntityException, Exception;

	public abstract void edit(Requisitosdeproyecto requisitosdeproyecto)
			throws NonexistentEntityException, Exception;

	public abstract void destroy(RequisitosdeproyectoPK id)
			throws NonexistentEntityException;

	public abstract List<Requisitosdeproyecto> findRequisitosdeproyectoEntities();

	public abstract List<Requisitosdeproyecto> findRequisitosdeproyectoEntities(
			int maxResults, int firstResult);

	public abstract Requisitosdeproyecto findRequisitosdeproyecto(
			RequisitosdeproyectoPK id);

	public abstract int getRequisitosdeproyectoCount();

	public abstract List<Requisitosdeproyecto> buscarPorRequisito(Long requisito);
	public abstract Requisitosdeproyecto buscarPorRequisito(Long requisito,Long proyecto);
}